package tabla_de_simbolos;

import analizadorlexico.Token;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Javi
 */
public abstract class Tipo {
    
    protected Token nombre;
    
    
    /**
     * Una clase y conforma a una clase x si a x se le puede asignar un objeto de tipo y.
     * @param x
     * @return true si la clase actual conforma a x, false caso contrario.
     */
    public abstract boolean conforma(Tipo x);
    
    public abstract boolean esPrimitivo();
    
    public String getNombre(){
        return nombre.getLexema();
    }
    
    public int getLinea(){
        return nombre.getLinea();
    }
}
